Skip to content

feat: document full DesignTheme API surface and replace deprecated GEMINI_3_PRO#13

Merged
gabelul merged 2 commits intomainfrom
feat/full-mcp-params
Mar 24, 2026
Merged

feat: document full DesignTheme API surface and replace deprecated GEMINI_3_PRO#13
gabelul merged 2 commits intomainfrom
feat/full-mcp-params

Conversation

@gabelul
Copy link
Copy Markdown
Owner

@gabelul gabelul commented Mar 24, 2026

Summary

  • Replace deprecated GEMINI_3_PRO with GEMINI_3_1_PRO across all 3 generation skills + orchestrator + UED guide + ideate + all examples
  • Document 18+ DesignTheme fields in get_project response (was showing 2, one with the wrong name)
  • Wire designMd + namedColors into design-system extraction — Stitch writes a full design system doc and 40+ semantic color tokens per project. We were parsing HTML to guess what the API already knew
  • Spec generator outputs API-native values now: colorVariant (9 enums), headlineFont/bodyFont/labelFont, spacingScale, roundness as API enums
  • Orchestrator reads DesignTheme from existing projects before generating new screens — so screen 5 matches screens 1-4 without manual prompt tuning
  • Refresh docs/mcp-schemas/*.json with fields from the live MCP server
  • Update create/update design system skills with headlineFont/bodyFont/labelFont alongside deprecated font field

Why

The Stitch SDK (@google/stitch-sdk v0.0.3) wraps the same MCP server we connect to. Reading its source revealed undocumented fields the MCP tools already accept/return. Verified against the live server on 2026-03-24 — every field checks out. The SDK itself doesn't help us (our skills are prompt-based, not TypeScript), but its schema exposed fields we never told Claude about.

What we found

  1. GEMINI_3_PRO is deprecated — every generation call was sending a deprecated model ID
  2. designMd — Stitch auto-generates a markdown design system per project (typography rules, color philosophy, component patterns). We were reverse-engineering tokens from HTML when this existed all along
  3. namedColors — 40+ pre-computed Material 3 semantic tokens. No more guessing primary vs surface colors from Tailwind classes
  4. headlineFont/bodyFont/labelFont replace the deprecated single font field
  5. colorVariant (FIDELITY, VIBRANT, EXPRESSIVE, etc.) controls how the palette gets derived from the seed color

Files changed (23)

Area Files What changed
Schemas 5 JSON files New DesignTheme fields, GEMINI_3_1_PRO model
MCP wrappers 6 skills Model fix + full response docs + font field update
Brain layer 3 skills Spec generator overhaul, prompt architect, UED guide
Extraction 2 skills designMd/namedColors as primary source
Orchestration 1 skill DesignTheme consistency gate for existing projects
Examples 6 files GEMINI_3_1_PRO + split font fields

Test plan (executed 2026-03-24)

  • Call get_project on an existing project — PASS: all 15 DesignTheme fields + 5 project fields confirmed
  • Generate a screen with GEMINI_3_FLASHPASS: full response with designMd (multi-KB), namedColors (47 tokens), split fonts, colorVariant, spacingScale
  • Generate a screen with GEMINI_3_1_PROINCONCLUSIVE: API accepted the parameter (no rejection), but HTTP timeout on both attempts. Known MCP transport issue — PRO takes longer than the HTTP window. Not a model validity issue.
  • Verify namedColors has 40+ tokens — PASS: 47 semantic color tokens returned
  • Verify designMd is a real document — PASS: multi-KB markdown with typography rules, color philosophy, component patterns, do's/don'ts
  • No skill recommends GEMINI_3_PRO as default — PASS (fixed in 2nd commit)
  • All modelId refs include GEMINI_3_1_PRO — PASS (fixed in 2nd commit)
  • colorVariant enums consistent across skills — PASS: all 9 values match
  • Font enum lists match internally — PASS: 28 fonts consistent across spec-generator, design-system, get-project schema
  • Roundness enums match across skills — PASS: ROUND_FOUR/EIGHT/TWELVE/FULL consistent in 5 skills
  • All 14 JSON schema files valid — PASS
  • No orphan old field references — PASS (fixed in 2nd commit)

…MINI_3_PRO

Verified against live Stitch MCP server (2026-03-24) via SDK research.

- Replace deprecated GEMINI_3_PRO with GEMINI_3_1_PRO across all generation skills
- Document 18+ DesignTheme fields in get_project (was showing 2)
- Fix wrong field name: primaryColor → customColor in get_project response
- Add colorVariant (9 enums), headlineFont/bodyFont/labelFont (replacing
  deprecated single font), namedColors (40+ semantic tokens), spacingScale,
  designMd, and override colors to schemas and skills
- Spec generator now outputs API-native values (colorVariant, split fonts,
  ROUND_EIGHT enums, spacingScale) — no downstream translation needed
- Design-system extraction reads designMd + namedColors from API first,
  falls back to HTML parsing only for motion/shadows
- Orchestrator pulls DesignTheme from existing projects before generating
  new screens, so screen 5 matches screens 1-4 automatically
- Refresh docs/mcp-schemas/*.json with all new fields
@gabelul gabelul changed the title feat: integrate full MCP DesignTheme params and fix deprecated model feat: document full DesignTheme API surface and replace deprecated GEMINI_3_PRO Mar 24, 2026
@gabelul gabelul force-pushed the feat/full-mcp-params branch from 4a47783 to 5e32786 Compare March 24, 2026 13:02
…examples

Caught by automated consistency checks:
- stitch-ideate: GEMINI_3_PRO → GEMINI_3_1_PRO as default model
- 7 example files: replace GEMINI_3_PRO with GEMINI_3_1_PRO
- create/update design system skills: add headlineFont/bodyFont/labelFont
  alongside deprecated font field
- spec-generator examples: use enum names and split font fields
@gabelul gabelul merged commit b871cd2 into main Mar 24, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant